const { DataTypes } = require('sequelize')
const seq = require('../db/seq')

// 创建模型
const User = seq.define('zhku_users', {
    user_account: {
        type: DataTypes.STRING(64),
        allowNull: false,
        unique: true,
        comment: '用户账号，唯一'
    },
    user_name: {
        type: DataTypes.STRING,
        allowNull: false,
        comment: '用户名'
    },
    password: {
        type: DataTypes.STRING(64),
        allowNull: false,
        comment: '密码'
    },
    is_active: {
        type: DataTypes.BOOLEAN,
        allowNull: false,
        defaultValue: 1,
        comment: '账号是否为激活状态: 0冻结 1激活'
    },
    user_tel: {
        type: DataTypes.STRING,
        allowNull: true,
        unique: true,
        comment: '用户绑定手机号'
    },
    avatar: {
        type: DataTypes.STRING,
        allowNull: false,
        unique: false,
        defaultValue: 'avatar/defaultAvatar.gif',
        comment: '用户头像'
    },
    role: {
        type: DataTypes.STRING(64),
        allowNull: false,
        comment: '用户所属角色编码'
    },
    openid: {
        type: DataTypes.STRING(255),
        allowNull: true,
        comment: '微信唯一标识符'
    }
}, {
    tableName: 'zhku_users', // 表名
    timestamps: true, // 是否创建时间戳列
    // freezeTableName: true // 强制表名等于模型名
})

// 如果数据库不存在该表，则自动创建
// User.sync()

module.exports = User